package com.wj.rspmproperty.service;

import com.wj.rspmproperty.pojo.PageResult;
import com.wj.rspmproperty.pojo.User;
import com.wj.rspmproperty.pojo.vo.UnpaidOwner;
import org.springframework.dao.DuplicateKeyException;

/**
 * @author WeiJin
 * @version 1.0
 */
public interface UserService {
    /**
     * 添加用户
     * @param user
     * @return
     * @throws DuplicateKeyException
     * @throws Exception
     */
    int insertUser(User user) throws DuplicateKeyException,Exception;

    /**
     * 分页查询业主信息
     * @param current 第几页
     * @param size 每页记录数
     * @return 返回分页信息
     */
    PageResult<User> pageOfOwners(Integer current, Integer size);

    /**
     * 修改用户状态
     * @param user
     * @return
     */
    int changeUserStatus(User user);

    /**
     * 根据id查询用户信息
     * @param id
     * @return
     */
    User queryById(Integer id);

    /**
     * 分页查询欠费用户
     * @param current
     * @param size
     * @param typeId
     * @return
     */
    PageResult<UnpaidOwner> pageOfUnpaidOwnerList(Integer current, Integer size, Integer typeId);
}
